import axios from 'axios';

axios.create({
  //   baseURL: process.env.NODE_ENV==""?"":"",
  baseURL: process.env.REACT_APP_BASE_URL,
  timeout: 5000,
})



// 添加请求拦截器
axios.interceptors.request.use(function (config) {
  // 在发送请求之前做些什么
  //请求头携带token
  let token = localStorage.getItem('token') || ""
  config.headers.Authorization = "Bearer " + token;

  return config;
}, function (error) {
  // 对请求错误做些什么
  return Promise.reject(error);
});

// 添加响应拦截器
axios.interceptors.response.use(function (response) {
  // 2xx 范围内的状态码都会触发该函数。
  // 对响应数据做点什么
  return response;
}, function (error) {
  // 超出 2xx 范围的状态码都会触发该函数。
  // 对响应错误做点什么
  let code = error.response.status;
  switch (code) {
    case 400:
      console.log('请求错误');
      break;
    case 401:
      console.log('未授权，请登录');
      break;
    case 403:
      console.log('拒绝访问');
      break;
    case 404:
      console.log('请求地址出错');
      break;
    case 500:
      console.log('服务器内部错误');
      break;
    case 501:
      console.log('服务未实现');
      break;
    case 502:
      console.log('网络错误');
  }
  return Promise.reject(error);
});
export default axios;